See so far so good on Wiktionary
{
"forms": [
{
"form": "so far, so good",
"tags": [
"alternative"
]
}
],
"head_templates": [
{
"args": {
"1": "phr"
},
"expansion": "so far so good",
"name": "en-head"
}
],
"lang": "English",
"lang_code": "en",
"pos": "phrase",
"senses": [
{
"categories": [
{
"kind": "other",
"name": "English entries with incorrect language header",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Entries with translation boxes",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Mandarin terms with non-redundant manual transliterations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Pages with 1 entry",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Pages with entries",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Basque translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Catalan translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Czech translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Danish translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Finnish translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with French translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with German translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Hungarian translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Irish translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Italian translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Mandarin translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Norwegian Bokmål translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Norwegian Nynorsk translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Portuguese translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Russian translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Spanish translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Vietnamese translations",
"parents": [],
"source": "w"
},
{
"kind": "other",
"name": "Terms with Welsh translations",
"parents": [],
"source": "w"
}
],
"derived": [
{
"word": "so far so bad"
}
],
"examples": [
{
"bold_text_offsets": [
[
115,
129
]
],
"text": "Well, you've packed your bags for the holiday, bought your tickets, reserved the hotel and put the dog in kennels. So far so good; now let's get to Minorca.",
"type": "example"
},
{
"bold_text_offsets": [
[
362,
376
]
],
"ref": "1918, James George Frazer, Folk-Lore In The Old Testament, volume 1, page 76:",
"text": "They say that Ngoc hoang sent a messenger from heaven to men to say that when they reached old age they should change their skins and live for ever, but that when serpents grew old they must die. The messenger came down to earth and said, rightly enough, \"When man is old he shall cast his skin; but when serpents are old they shall die and be laid in coffins.\" So far so good. But unluckily there happened to be a brood of serpents within hearing, and when they learned the doom pronounced on their kind, they fell into a fury and said to the messenger, \"You must say it over again and just the contrary, or we will bite you.\"",
"type": "quotation"
}
],
"glosses": [
"Up to this point, all is OK."
],
"id": "en-so_far_so_good-en-phrase-JPUQbZSO",
"links": [
[
"OK",
"OK"
]
],
"raw_glosses": [
"(idiomatic) Up to this point, all is OK."
],
"tags": [
"idiomatic"
],
"translations": [
{
"code": "eu",
"lang": "Basque",
"lang_code": "eu",
"sense": "up to this point, all is OK",
"word": "orain artean, dena ongi"
},
{
"code": "ca",
"lang": "Catalan",
"lang_code": "ca",
"sense": "up to this point, all is OK",
"word": "de moment, tot va bé"
},
{
"code": "cmn",
"lang": "Chinese Mandarin",
"lang_code": "cmn",
"roman": "dào mùqián wéizhǐ yīqiè shùnlì",
"sense": "up to this point, all is OK",
"word": "到目前為止一切順利 /到目前为止一切顺利"
},
{
"code": "cmn",
"lang": "Chinese Mandarin",
"lang_code": "cmn",
"roman": "mùqián wéizhǐ yīqiè hái hǎo",
"sense": "up to this point, all is OK",
"word": "目前爲止一切還好 /目前为止一切还好"
},
{
"code": "cs",
"lang": "Czech",
"lang_code": "cs",
"sense": "up to this point, all is OK",
"word": "zatím to ujde"
},
{
"code": "da",
"lang": "Danish",
"lang_code": "da",
"sense": "up to this point, all is OK",
"word": "så langt, så godt"
},
{
"code": "fi",
"lang": "Finnish",
"lang_code": "fi",
"sense": "up to this point, all is OK",
"word": "tähän asti kaikki hyvin"
},
{
"code": "fr",
"lang": "French",
"lang_code": "fr",
"sense": "up to this point, all is OK",
"word": "jusqu'à présent, tout va bien"
},
{
"code": "fr",
"lang": "French",
"lang_code": "fr",
"sense": "up to this point, all is OK",
"word": "jusqu’ici tout va bien"
},
{
"code": "de",
"lang": "German",
"lang_code": "de",
"sense": "up to this point, all is OK",
"word": "so weit, so gut"
},
{
"code": "hu",
"lang": "Hungarian",
"lang_code": "hu",
"sense": "up to this point, all is OK",
"word": "eddig jó"
},
{
"code": "hu",
"lang": "Hungarian",
"lang_code": "hu",
"sense": "up to this point, all is OK",
"word": "eddig minden rendben"
},
{
"code": "ga",
"lang": "Irish",
"lang_code": "ga",
"sense": "up to this point, all is OK",
"word": "tús maith leath na hoibre"
},
{
"code": "it",
"lang": "Italian",
"lang_code": "it",
"sense": "up to this point, all is OK",
"word": "fin qui tutto bene"
},
{
"code": "nb",
"lang": "Norwegian Bokmål",
"lang_code": "nb",
"sense": "up to this point, all is OK",
"word": "så langt, så godt"
},
{
"code": "nn",
"lang": "Norwegian Nynorsk",
"lang_code": "nn",
"sense": "up to this point, all is OK",
"word": "så langt, så godt"
},
{
"code": "pt",
"lang": "Portuguese",
"lang_code": "pt",
"sense": "up to this point, all is OK",
"word": "até agora tudo bem"
},
{
"code": "ru",
"lang": "Russian",
"lang_code": "ru",
"roman": "poká vse xorošó",
"sense": "up to this point, all is OK",
"word": "пока́ все хорошо́"
},
{
"code": "es",
"lang": "Spanish",
"lang_code": "es",
"sense": "up to this point, all is OK",
"word": "hasta ahora todo bien"
},
{
"code": "es",
"lang": "Spanish",
"lang_code": "es",
"sense": "up to this point, all is OK",
"word": "por ahora todo bien"
},
{
"code": "vi",
"lang": "Vietnamese",
"lang_code": "vi",
"sense": "up to this point, all is OK",
"word": "mọi thứ vẫn tốt đẹp"
},
{
"code": "vi",
"lang": "Vietnamese",
"lang_code": "vi",
"sense": "up to this point, all is OK",
"word": "cho đến đây mọi việc đều tốt lành"
},
{
"code": "vi",
"lang": "Vietnamese",
"lang_code": "vi",
"sense": "up to this point, all is OK",
"word": "cho đến bây giờ mọi việc đề ổn"
},
{
"code": "cy",
"lang": "Welsh",
"lang_code": "cy",
"sense": "up to this point, all is OK",
"word": "popeth yn iawn hyd yma"
}
]
}
],
"sounds": [
{
"audio": "En-au-so far so good.ogg",
"mp3_url": "https://upload.wikimedia.org/wikipedia/commons/transcoded/7/7d/En-au-so_far_so_good.ogg/En-au-so_far_so_good.ogg.mp3",
"ogg_url": "https://upload.wikimedia.org/wikipedia/commons/7/7d/En-au-so_far_so_good.ogg",
"tags": [
"Australia"
]
}
],
"word": "so far so good"
}
{
"derived": [
{
"word": "so far so bad"
}
],
"forms": [
{
"form": "so far, so good",
"tags": [
"alternative"
]
}
],
"head_templates": [
{
"args": {
"1": "phr"
},
"expansion": "so far so good",
"name": "en-head"
}
],
"lang": "English",
"lang_code": "en",
"pos": "phrase",
"senses": [
{
"categories": [
"English entries with incorrect language header",
"English idioms",
"English lemmas",
"English multiword terms",
"English phrases",
"English terms with quotations",
"English terms with usage examples",
"Entries with translation boxes",
"Mandarin terms with non-redundant manual transliterations",
"Pages with 1 entry",
"Pages with entries",
"Terms with Basque translations",
"Terms with Catalan translations",
"Terms with Czech translations",
"Terms with Danish translations",
"Terms with Finnish translations",
"Terms with French translations",
"Terms with German translations",
"Terms with Hungarian translations",
"Terms with Irish translations",
"Terms with Italian translations",
"Terms with Mandarin translations",
"Terms with Norwegian Bokmål translations",
"Terms with Norwegian Nynorsk translations",
"Terms with Portuguese translations",
"Terms with Russian translations",
"Terms with Spanish translations",
"Terms with Vietnamese translations",
"Terms with Welsh translations"
],
"examples": [
{
"bold_text_offsets": [
[
115,
129
]
],
"text": "Well, you've packed your bags for the holiday, bought your tickets, reserved the hotel and put the dog in kennels. So far so good; now let's get to Minorca.",
"type": "example"
},
{
"bold_text_offsets": [
[
362,
376
]
],
"ref": "1918, James George Frazer, Folk-Lore In The Old Testament, volume 1, page 76:",
"text": "They say that Ngoc hoang sent a messenger from heaven to men to say that when they reached old age they should change their skins and live for ever, but that when serpents grew old they must die. The messenger came down to earth and said, rightly enough, \"When man is old he shall cast his skin; but when serpents are old they shall die and be laid in coffins.\" So far so good. But unluckily there happened to be a brood of serpents within hearing, and when they learned the doom pronounced on their kind, they fell into a fury and said to the messenger, \"You must say it over again and just the contrary, or we will bite you.\"",
"type": "quotation"
}
],
"glosses": [
"Up to this point, all is OK."
],
"links": [
[
"OK",
"OK"
]
],
"raw_glosses": [
"(idiomatic) Up to this point, all is OK."
],
"tags": [
"idiomatic"
]
}
],
"sounds": [
{
"audio": "En-au-so far so good.ogg",
"mp3_url": "https://upload.wikimedia.org/wikipedia/commons/transcoded/7/7d/En-au-so_far_so_good.ogg/En-au-so_far_so_good.ogg.mp3",
"ogg_url": "https://upload.wikimedia.org/wikipedia/commons/7/7d/En-au-so_far_so_good.ogg",
"tags": [
"Australia"
]
}
],
"translations": [
{
"code": "eu",
"lang": "Basque",
"lang_code": "eu",
"sense": "up to this point, all is OK",
"word": "orain artean, dena ongi"
},
{
"code": "ca",
"lang": "Catalan",
"lang_code": "ca",
"sense": "up to this point, all is OK",
"word": "de moment, tot va bé"
},
{
"code": "cmn",
"lang": "Chinese Mandarin",
"lang_code": "cmn",
"roman": "dào mùqián wéizhǐ yīqiè shùnlì",
"sense": "up to this point, all is OK",
"word": "到目前為止一切順利 /到目前为止一切顺利"
},
{
"code": "cmn",
"lang": "Chinese Mandarin",
"lang_code": "cmn",
"roman": "mùqián wéizhǐ yīqiè hái hǎo",
"sense": "up to this point, all is OK",
"word": "目前爲止一切還好 /目前为止一切还好"
},
{
"code": "cs",
"lang": "Czech",
"lang_code": "cs",
"sense": "up to this point, all is OK",
"word": "zatím to ujde"
},
{
"code": "da",
"lang": "Danish",
"lang_code": "da",
"sense": "up to this point, all is OK",
"word": "så langt, så godt"
},
{
"code": "fi",
"lang": "Finnish",
"lang_code": "fi",
"sense": "up to this point, all is OK",
"word": "tähän asti kaikki hyvin"
},
{
"code": "fr",
"lang": "French",
"lang_code": "fr",
"sense": "up to this point, all is OK",
"word": "jusqu'à présent, tout va bien"
},
{
"code": "fr",
"lang": "French",
"lang_code": "fr",
"sense": "up to this point, all is OK",
"word": "jusqu’ici tout va bien"
},
{
"code": "de",
"lang": "German",
"lang_code": "de",
"sense": "up to this point, all is OK",
"word": "so weit, so gut"
},
{
"code": "hu",
"lang": "Hungarian",
"lang_code": "hu",
"sense": "up to this point, all is OK",
"word": "eddig jó"
},
{
"code": "hu",
"lang": "Hungarian",
"lang_code": "hu",
"sense": "up to this point, all is OK",
"word": "eddig minden rendben"
},
{
"code": "ga",
"lang": "Irish",
"lang_code": "ga",
"sense": "up to this point, all is OK",
"word": "tús maith leath na hoibre"
},
{
"code": "it",
"lang": "Italian",
"lang_code": "it",
"sense": "up to this point, all is OK",
"word": "fin qui tutto bene"
},
{
"code": "nb",
"lang": "Norwegian Bokmål",
"lang_code": "nb",
"sense": "up to this point, all is OK",
"word": "så langt, så godt"
},
{
"code": "nn",
"lang": "Norwegian Nynorsk",
"lang_code": "nn",
"sense": "up to this point, all is OK",
"word": "så langt, så godt"
},
{
"code": "pt",
"lang": "Portuguese",
"lang_code": "pt",
"sense": "up to this point, all is OK",
"word": "até agora tudo bem"
},
{
"code": "ru",
"lang": "Russian",
"lang_code": "ru",
"roman": "poká vse xorošó",
"sense": "up to this point, all is OK",
"word": "пока́ все хорошо́"
},
{
"code": "es",
"lang": "Spanish",
"lang_code": "es",
"sense": "up to this point, all is OK",
"word": "hasta ahora todo bien"
},
{
"code": "es",
"lang": "Spanish",
"lang_code": "es",
"sense": "up to this point, all is OK",
"word": "por ahora todo bien"
},
{
"code": "vi",
"lang": "Vietnamese",
"lang_code": "vi",
"sense": "up to this point, all is OK",
"word": "mọi thứ vẫn tốt đẹp"
},
{
"code": "vi",
"lang": "Vietnamese",
"lang_code": "vi",
"sense": "up to this point, all is OK",
"word": "cho đến đây mọi việc đều tốt lành"
},
{
"code": "vi",
"lang": "Vietnamese",
"lang_code": "vi",
"sense": "up to this point, all is OK",
"word": "cho đến bây giờ mọi việc đề ổn"
},
{
"code": "cy",
"lang": "Welsh",
"lang_code": "cy",
"sense": "up to this point, all is OK",
"word": "popeth yn iawn hyd yma"
}
],
"word": "so far so good"
}
Download raw JSONL data for so far so good meaning in All languages combined (6.0kB)
This page is a part of the kaikki.org machine-readable All languages combined dictionary. This dictionary is based on structured data extracted on 2026-09-09 from the enwiktionary dump dated 2026-09-02 using wiktextract (ccec6f1 and 4deed51). The data shown on this site has been post-processed and various details (e.g., extra categories) removed, some information disambiguated, and additional data merged from other sources. See the raw data download page for the unprocessed wiktextract data.
If you use this data in academic research, please cite Tatu Ylonen: Wiktextract: Wiktionary as Machine-Readable Structured Data, Proceedings of the 13th Conference on Language Resources and Evaluation (LREC), pp. 1317-1325, Marseille, 20-25 June 2022. Linking to the relevant page(s) under https://kaikki.org would also be greatly appreciated.